#include<iostream>
#include<stdlib.h>
#include<unistd.h>
#include<signal.h>
#include<sys/types.h>
using namespace std;

// void Usag()
// {
//     cout << "Usag:\n\t" << "kill -signum pid" << endl;
// }

// void handler(int signo)
// {
//     cout << "get a signo: " << signo << endl;
//     //exit(1);
// }

// int main(int argc, char* argv[])
// {
//     signal(6, handler);
//     int cnt = 5;
//     //while(true)
//     while(cnt--)
//     {
//         cout << "this process pid = " << getpid() << endl;
//         sleep(1);
//         if(cnt == 1)
//             abort();
//     }

//     // cout << "this process pid = " << getpid() << endl;
//     // sleep(1);
//     // raise(9);


//     // if(argc != 3)
//     // {
//     //     Usag();
//     //     exit(1);
//     // }
//     // int signum = stoi(argv[1]);
//     // int pid = stoi(argv[2]);
//     // int ret = kill(pid, signum);
//     // if(ret == -1)
//     // {
//     //     perror("kill");
//     //     exit(2);
//     // }

//     return 0;
// }

void handler(int signo)
{
    cout << "get a signo: " << signo << endl;
}

int main()
{
    for(int i = 1; i <= 31; ++i)
    {
        signal(i, handler);
    }

    //signal(2,handler);

    while(true)
    {
        cout << "I am a crazy process" << " pid = " << getpid() << endl;
        sleep(1);
    }
    return 0;
}